package com.xhh.nphm.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xhh.nphm.system.domain.MakeTag;
import org.apache.ibatis.annotations.*;

@Mapper
public interface MakeTagDao extends BaseMapper<MakeTag> {

    /**
     * 保存电话工单打标
     * @param makeTag
     * @return
     */
    @Insert("insert into tm_makeTag_Tel(tel_id,tag_pkid,tag_name,is_del) values(#{recordId},#{tagPkid},#{tagName},0)")
    int saveTelMakeTag(MakeTag makeTag);

    /**
     * 保存信件工单打标
     * @param makeTag
     * @return
     */
    @Insert("insert into tm_makeTag_Mail(mail_id,tag_pkid,tag_name,is_del) values(#{recordId},#{tagPkid},#{tagName},0)")
    int saveMailMakeTag(MakeTag makeTag);

    /**
     * 删除电话工单标签
     * @param recordId 工单id
     * @param tagNo 标签编号
     * @return
     */
    @Update("update tm_makeTag_Tel set is_del = 1 where tel_id = #{telId} and tag_pkid = #{tagNo}")
    int deleteTByRecordIdOrTagId(@Param("telId") String recordId, @Param("tagNo")Long tagNo);


    /**
     * 删除信件工单标签
     * @param recordId 工单id
     * @param tagNo 标签编号
     * @return
     */
    @Update("update tm_makeTag_Mail set is_del = 1 where mail_id = #{mailId} and tag_pkid = #{tagNo}")
    int deleteMByRecordIdOrTagId(@Param("mailId") String recordId, @Param("tagNo")Long tagNo);

    /**
     * 如果电话标签存在记录且被逻辑删除，执行修改操作
     * @param recordId 电话id
     * @param tagNo 标签id
     * @return
     */
    @Update("update tm_makeTag_Tel set is_del = 0 where tel_id = #{telId} and tag_pkid = #{tagNo}")
    int updateByTagNoT(@Param("telId") String recordId, @Param("tagNo")Long tagNo);

    /**
     * 如果信件标签存在记录且被逻辑删除，执行修改操作
     * @param recordId 信件id
     * @param tagNo 标签id
     * @return
     */
    @Update("update tm_makeTag_Mail set is_del = 0 where mail_id = #{mailId} and tag_pkid = #{tagNo}")
    int updateByTagNoM(@Param("mailId") String recordId, @Param("tagNo")Long tagNo);
}
